home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / Kubuntu 8.10 / kubuntu-8.10-desktop-i386.iso / casper / filesystem.squashfs / usr / lib / perl5 / Text / CharWidth.pm next >
Text File  |  2003-06-25  |  2KB  |  79 lines

  1. package Text::CharWidth;
  2.  
  3. use 5.008;
  4. use strict;
  5. use warnings;
  6.  
  7. require Exporter;
  8.  
  9. our @ISA = qw(Exporter);
  10. our @EXPORT_OK = qw(mbwidth mbswidth mblen);
  11. our @EXPORT = qw();
  12. our %EXPORT_TAGS = ('all' => [ @EXPORT_OK ]);
  13.  
  14. our $VERSION = '0.04';
  15.  
  16. require XSLoader;
  17. XSLoader::load('Text::CharWidth', $VERSION);
  18.  
  19. # Preloaded methods go here.
  20.  
  21. 1;
  22. __END__
  23. # Below is stub documentation for your module. You'd better edit it!
  24.  
  25. =head1 NAME
  26.  
  27. Text::CharWidth - Get number of occupied columns of a string on terminal
  28.  
  29. =head1 SYNOPSIS
  30.  
  31.   use Text::CharWidth qw(mbwidth mbswidth mblen);
  32.   mbwidth(string);
  33.   mbswidth(string);
  34.   mblen(string);
  35.  
  36. =head1 DESCRIPTION
  37.  
  38. This module supplies features similar as wcwidth(3) and wcswidth(3)
  39. in C language.
  40.  
  41. Characters have its own width on terminal depending on locale.
  42. For example, ASCII characters occupy one column per character,
  43. east Asian fullwidth characters (like Hiragana or Han Ideograph)
  44. occupy two columns per character, and combining characters (apperaring
  45. in ISO-8859-11 Thai, Unicode, and so on) occupy zero columns per
  46. character.  mbwidth() gives the width of the first character of
  47. the given string and mbswidth() gives the width of the whole given
  48. string.
  49.  
  50. The names of mbwidth and mbswidth came from "multibyte" versions
  51. of wcwidth and wcswidth which are "wide character" versions.
  52.  
  53. I<mblen(string)> returns number of bytes of the first character of the
  54. string.  Please note that a character may consist of multiple
  55. bytes in multibyte encodings such as UTF-8, EUC-JP, EUC-KR,
  56. GB2312, or Big5.
  57.  
  58. I<mbwidth(string)> returns the width of the first character of the
  59. string.  I<mbswidth(string)> returns the width of the whole string.
  60.  
  61. Parameters are to be given in locale encodings, not always in UTF-8.
  62.  
  63. =head1 SEE ALSO
  64.  
  65. locale(5), wcwidth(3), wcswidth(3)
  66.  
  67. =head1 AUTHOR
  68.  
  69. Tomohiro KUBOTA, E<lt>kubota@debian.orgE<gt>
  70.  
  71. =head1 COPYRIGHT AND LICENSE
  72.  
  73. Copyright 2003 by Tomohiro KUBOTA
  74.  
  75. This library is free software; you can redistribute it and/or modify
  76. it under the same terms as Perl itself. 
  77.  
  78. =cut
  79.